package org.luxor.commons.sms.constant;

/**
 * 世界手机区号枚举类
 *
 * @author Mr.Yan  @date: 2021/1/11
 */
public enum CountryCode {

    China("中国", "+86"),
    HongKong("香港", "+852"),
    Macao("澳门", "+853"),
    Taiwan("台湾", "+886"),
    UnitedKingdom("英国", "+44"),
    USA("美国", "+1"),
    Canada("加拿大", "+1"),
    Singapore("新加坡", "+65"),
    Korea("韩国", "+82"),
    Russia("俄罗斯", "+7"),
    Japan("日本", "+81"),
    India("印度", "+91"),
    Vietnam("越南", "+84"),
    Israel("以色列", "+972"),
    Italy("意大利", "+93"),
    Afghanistan("阿富汗", "+93"),
    Albania("阿尔巴尼亚", "+355"),
    Algera("阿尔格拉", "+213"),
    Andorra("安道尔", "+376"),
    Angola("安哥拉", "+244"),
    Anguilla("安圭拉", "+1264"),
    Ascension("阿森松岛", "+247"),
    AntiguaandBarbuda("安提瓜和巴布达", "+1268"),
    Argentina("阿根廷", "+54"),
    Armenia("亚美尼亚", "+374"),
    Aruba("阿鲁巴", "+297"),
    Australia("澳大利亚", "+61"),
    Austria("奥地利", "+43"),
    Azerbaijan("阿塞拜疆", "+994"),
    Bahamas("巴哈马", "+1242"),
    Bahrain("巴林", "+973"),
    Bangladesh("孟加拉国", "+880"),
    Barbados("巴巴多斯", "+1246"),
    Belarus("白俄罗斯", "+375"),
    Belgium("比利时", "+32"),
    Belize("伯利兹", "+501"),
    Benin("贝宁", "+229"),
    Bermuda("百慕大", "+1441"),
    Bhutan("不丹", "+975"),
    Bolivia("玻利维亚", "+591"),
    BosniaandHerzegovina("波斯尼亚和黑塞哥维那", "+387"),
    Botwana("博茨瓦纳", "+267"),
    Brazil("巴西", "+55"),
    Brunei("文莱", "+673"),
    Bulgaria("保加利亚", "+359"),
    BurkinaFaso("布基纳法索", "+226"),
    Burundi("布隆迪", "+257"),
    Cambodia("柬埔寨", "+855"),
    Cameroon("喀麦隆", "+237"),
    CapeVerde("佛得角", "+238"),
    CaymanIslands("开曼群岛", "+1345"),
    CentralAfricanRepublic("中非共和国", "+236"),
    Chad("乍得", "+235"),
    Chile("智利", "+56"),
    Colombia("哥伦比亚", "+57"),
    Comoros("科摩罗", "+269"),
    RepublicoftheCongo("刚果共和国", "+242"),
    DemocraticRepublicoftheCong("刚果民主共和国", "+243"),
    CookIslands("库克群岛", "+682"),
    CostaRica("哥斯达黎加", "+506"),
    Cotedivoire("科特迪沃", "+225"),
    Croatia("克罗地亚", "+385"),
    Cuba("古巴", "+53"),
    Cyprus("塞浦路斯", "+357"),
    CzechRepublic("捷克共和国", "+420"),
    Denmark("丹麦", "+45"),
    Djibouti("吉布提", "+253"),
    Dominica("多米尼加", "+1767"),
    DominicanRepublic("多米尼加共和国", "+1809"),
    Ecuador("厄瓜多尔", "+593"),
    Egypt("埃及", "+20"),
    EISalvador("艾萨尔瓦多", "+503"),
    Estonia("爱沙尼亚", "+372"),
    Ethiopia("埃塞俄比亚", "+251"),
    FaroeIslands("法罗群岛", "+298"),
    Fiji("斐济", "+679"),
    Finland("芬兰", "+358"),
    France("法国", "+33"),
    FrenchGuiana("法属圭亚那", "+594"),
    FrenchPolynesia("法属波利尼西亚", "+689"),
    Gabon("加蓬", "+241"),
    Gambia("冈比亚", "+220"),
    Georgia("格鲁吉亚", "+995"),
    Germany("德国", "+94"),
    Ghana("加纳", "+233"),
    Gibraltar("直布罗陀", "+350"),
    Greece("希腊", "+30"),
    Greenland("格陵兰", "+299"),
    Grenada("格林纳达", "+1473"),
    Guadeloupe("瓜德罗普", "+590"),
    Guam("关岛", "+1671"),
    Guatemala("危地马拉", "+502"),
    Guernsey("根西", "+44"),
    Guinea("几内亚", "+224"),
    Guyana("圭亚那", "+592"),
    Haiti("海地", "+509"),
    Honduras("洪都拉斯", "+504"),
    Myanmar("缅甸", "+95"),
    Hungary("匈牙利", "+36"),
    Iceland("冰岛", "+354"),
    Indonesia("印度尼西亚", "+62"),
    Iran("伊朗", "+98"),
    Iraq("伊拉克", "+964"),
    Ireland("爱尔兰", "+353"),
    IsleofMan("马恩岛", "+44"),
    Jamaica("牙买加", "+1876"),
    Jersey("泽西岛", "+44"),
    Jordan("约旦", "+962"),
    Kazeakhstan("哈萨克斯坦", "+7"),
    Kenya("肯尼亚", "+254"),
    Kosovo("科索沃", "+383"),
    Kuwait("科威特", "+965"),
    Kyrgyzstan("吉尔吉斯斯坦", "+996"),
    Laos("老挝", "+856"),
    Latvia("拉脱维亚", "+371"),
    Lebanon("黎巴嫩", "+961"),
    Lesotho("莱索托", "+266"),
    Liberia("利比里亚", "+231"),
    Libya("利比亚", "+218"),
    Liechtenstein("列支敦士登", "+423"),
    Lithuania("立陶宛", "+370"),
    Luxembourg("卢森堡", "+352"),
    Macedonia("马其顿", "+389"),
    Madagascar("马达加斯加", "+261"),
    Malawi("马拉维", "+265"),
    Malaysia("马来西亚", "+60"),
    Maldives("马尔代夫", "+960"),
    Mali("马里", "+223"),
    Malta("马耳他", "+356"),
    Martinique("马提尼克", "+596"),
    Mauritania("毛里塔尼亚", "+222"),
    Mauritius("毛里求斯", "+230"),
    Mayotte("马约特", "+262"),
    Mexico("墨西哥", "+52"),
    Moldova("摩尔多瓦", "+373"),
    Monaco("摩纳哥", "+377"),
    Mongolia("蒙古", "+976"),
    Montenegro("黑山", "+382"),
    Montserrat("蒙特塞拉特", "+1664"),
    Morocco("摩洛哥", "+212"),
    Mozambique("莫桑比克", "+258"),
    Namibia("纳米比亚", "+264"),
    Nepal("尼泊尔", "+977"),
    Netherlands("荷兰", "+31"),
    NetherlandsAntillse("荷属安的列斯", "+599"),
    NewCaledonia("新喀里多尼亚", "+687"),
    NewZealand("新西兰", "+64"),
    Nicaragua("尼加拉瓜", "+505"),
    Niger("尼日尔", "+227"),
    Nigeria("尼日利亚", "+234"),
    Norway("挪威", "+47"),
    PuertoRico("波多黎各", "+1787"),
    Oman("阿曼", "+968"),
    Pakistan("巴基斯坦", "+92"),
    Palestinian("巴勒斯坦", "+970"),
    Panama("巴拿马", "+507"),
    PapuaNewGuinea("巴布亚新几内亚", "+675"),
    Paraguay("巴拉圭", "+595"),
    Peru("秘鲁", "+51"),
    Philippines("菲律宾", "+63"),
    Poland("波兰", "+48"),
    Portugal("葡萄牙", "+351"),
    Qotar("库塔", "+974"),
    Reunion("留尼汪", "+262"),
    Romania("罗马尼亚", "+40"),
    Rwanda("卢旺达", "+250"),
    SamoaEastern("萨摩亚东部", "+684"),
    SamoaWestern("萨摩亚西部", "+685"),
    SanMarino("圣马力诺", "+378"),
    SaoTomeandPrincipe("圣多美和普林西比", "+239"),
    SaudiArabia("沙特阿拉伯", "+966"),
    Senegal("塞内加尔", "+221"),
    Serbia("塞尔维亚", "+381"),
    Seychelles("塞舌尔", "+248"),
    SierraLeone("塞拉利昂", "+232"),
    Slovakia("斯洛伐克", "+421"),
    Slovenia("斯洛文尼亚", "+386"),
    SouthAfrica("南非", "+27"),
    Spain("西班牙", "+34"),
    SriLanka("斯里兰卡", "+94"),
    StKittsandNevis("圣基茨和尼维斯", "+1869"),
    StLucia("圣卢西亚", "+1758"),
    StVincent("圣文森特", "+1784"),
    Sudan("苏丹", "+249"),
    Suriname("苏里南", "+597"),
    Swaziland("斯威士兰", "+268"),
    Sweden("瑞典", "+46"),
    Switzerland("瑞士", "+41"),
    Syria("叙利亚", "+963"),
    Tajikistan("塔吉克斯坦", "+992"),
    Tanzania("坦桑尼亚", "+255"),
    Thailand("泰国", "+66"),
    TimorLeste("东帝汶", "+670"),
    Togo("多哥", "+228"),
    Tonga("汤加", "+676"),
    TrinidadandTobago("特立尼达和多巴哥", "+1868"),
    Tunisia("突尼斯", "+216"),
    Turkey("土耳其", "+90"),
    Turkmenistan("土库曼斯坦", "+993"),
    TurksandCaicosIslands("特克斯和凯科斯群岛", "+1649"),
    Uganda("乌干达", "+256"),
    Ukraine("乌克兰", "+380"),
    UnitedArabEmirates("阿拉伯联合酋长国", "+971"),
    Uruguay("乌拉圭", "+598"),
    Uzbekistan("乌兹别克斯坦", "+998"),
    Vanuatu("瓦努阿图", "+678"),
    Venezuela("委内瑞拉", "+58"),
    VirginIslands("维尔京群岛", "+1340"),
    Yemen("也门", "+967"),
    Zambia("赞比亚", "+260"),
    Zimbabwe("津巴布韦", "+263");

    private final String country;
    private final String code;

    CountryCode(String country, String code) {
        this.country = country;
        this.code = code;
    }

    public String getCountry() {
        return country;
    }

    public String getCode() {
        return code;
    }
}
